// #include <iostream>
// using namespace std;
// const int N = 130;
// int e[N][N];
// int s[N][N];
// int n;
// int mx = -0x3f3f3f3f;
// int main()
// {
    // cin >> n;
    // for(int i = 1; i <= n; i++)
        // for(int j = 1; j <= n; j++) cin >> e[i][j];
//     
    // for(int i = 1; i <= n; i++)
        // for(int j = 1; j <= n; j++)
        	// s[i][j] = s[i - 1][j] + s[i][j - 1] - s[i - 1][j - 1] + e[i][j];
//     
    // for(int x1 = 1; x1 <= n; x1 ++)
    // {
        // for(int y1 = 1; y1 <= n; y1 ++)
        // {
            // for(int x2 = x1; x2 <= n; x2 ++)
            // {
                // for(int y2 = y1; y2 <= n; y2 ++)
                // {
                    // mx = max(mx, s[x2][y2] - s[x1 - 1][y2] - s[x2][y1 - 1] + s[x1 - 1][y1 - 1]);
                // }
            // }
        // }
    // }
    // cout << mx;
    // return 0;
// }

#include <iostream>
#include <algorithm>
using namespace std;
const int N = 20010;
typedef pair<int, int> PII;
const int inf = INT_MIN;
int n, res;
 
PII e[N];
int main()
{
	cin >> n;
	for(int i = 0; i < n; i++) 
	{
		int a, b;
		cin >> a >> b;
		e[i] = {a, b};
	}
	sort(e, e + n);
	int beg = inf, en = inf;
	beg = e[0].first, en = e[0].second;
	for(int i = 1; i < n; i++)
	{
		int a = e[i].first, b = e[i].second;
		if(a <= en) en = b;
		else
		{
			res += en - beg;
			beg = a;
			en = b;
		}
	}
	res += (en - beg);
	cout << res;
	return 0;
}